package com.ruoyi.system.domain;

import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;
import java.util.Objects;

/**
 * 智能称重记录对象 sys_client_weight
 * 
 * @author spark
 * @date 2023-08-13
 */
public class SysClientWeightCount extends BaseEntity
{
    private static final long serialVersionUID = 1L;


    public SysClientWeightCount(String goodsId, String goodsName, BigDecimal weight, String weightUnit, Long clientId, String clientName, String lineName, String roomName, String factoryName) {
        this.goodsId = goodsId;
        this.goodsName = goodsName;
        this.weight = weight;
        this.weightUnit = weightUnit;
        this.clientId = clientId;
        this.clientName = clientName;
        this.roomName = roomName;
        this.factoryName = factoryName;
        this.lineName = lineName;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        SysClientWeightCount that = (SysClientWeightCount) o;
        return Objects.equals(goodsId, that.goodsId) && Objects.equals(clientId, that.clientId);
    }

    @Override
    public int hashCode() {
        return Objects.hash(goodsId, clientId);
    }

    /** 主键 */
    private Long dataId;
    private String  rowKey;

    /** 物料号 */
    @Excel(name = "物料号")
    private String goodsId;

    /** 物料、商品 */
    @Excel(name = "物料、商品")
    private String goodsName;

    @Excel(name = "总秤重量")
    private Double weightSum;

    @Excel(name = "物料总秤重量")
    private Double weightCoodsSum;
    /** 毛重 */
    @Excel(name = "毛重")
    private BigDecimal allWeight;

    /** 扣重 */
    @Excel(name = "扣重")
    private BigDecimal subWeight;

    /** 净重量 */
    @Excel(name = "净重量")
    private BigDecimal weight;

    /** 重量单位 */
    @Excel(name = "重量单位")
    private String weightUnit;

    /** 终端ID */
    @Excel(name = "终端ID")
    private Long clientId;

    /** 产线ID */
    @Excel(name = "产线ID")
    private Long workLineId;

    /** 车间ID */
    @Excel(name = "车间ID")
    private Long roomId;

    /** 工厂ID */
    @Excel(name = "工厂ID")
    private Long factoryId;

    @Excel(name = "终端名称")
    private String clientName;

    @Excel(name = "车间名称")
    private String roomName;

    @Excel(name = "工厂名称")
    private String factoryName;

    @Excel(name = "产线名称")
    private String lineName;

    private Long deptId;

    public String getRowKey() {
        return rowKey;
    }

    public void setRowKey(String rowKey) {
        this.rowKey = rowKey;
    }

    public Double getWeightSum() {
        return weightSum;
    }

    public void setWeightSum(Double weightSum) {
        this.weightSum = weightSum;
    }

    public Double getWeightCoodsSum() {
        return weightCoodsSum;
    }

    public void setWeightCoodsSum(Double weightCoodsSum) {
        this.weightCoodsSum = weightCoodsSum;
    }

    public Long getDeptId() {
        return deptId;
    }

    public void setDeptId(Long deptId) {
        this.deptId = deptId;
    }

    public String getClientName() {
        return clientName;
    }

    public void setClientName(String clientName) {
        this.clientName = clientName;
    }

    public String getRoomName() {
        return roomName;
    }

    public void setRoomName(String roomName) {
        this.roomName = roomName;
    }

    public String getFactoryName() {
        return factoryName;
    }

    public void setFactoryName(String factoryName) {
        this.factoryName = factoryName;
    }

    public String getLineName() {
        return lineName;
    }

    public void setLineName(String lineName) {
        this.lineName = lineName;
    }

    public void setDataId(Long dataId)
    {
        this.dataId = dataId;
    }

    public Long getDataId() 
    {
        return dataId;
    }
    public void setGoodsId(String goodsId)
    {
        this.goodsId = goodsId;
    }

    public String getGoodsId() 
    {
        return goodsId;
    }
    public void setGoodsName(String goodsName) 
    {
        this.goodsName = goodsName;
    }

    public String getGoodsName() 
    {
        return goodsName;
    }
    public void setAllWeight(BigDecimal allWeight)
    {
        this.allWeight = allWeight;
    }

    public BigDecimal getAllWeight() 
    {
        return allWeight;
    }
    public void setSubWeight(BigDecimal subWeight) 
    {
        this.subWeight = subWeight;
    }

    public BigDecimal getSubWeight() 
    {
        return subWeight;
    }
    public void setWeight(BigDecimal weight) 
    {
        this.weight = weight;
    }

    public BigDecimal getWeight() 
    {
        return weight;
    }
    public void setWeightUnit(String weightUnit) 
    {
        this.weightUnit = weightUnit;
    }

    public String getWeightUnit() 
    {
        return weightUnit;
    }
    public void setClientId(Long clientId)
    {
        this.clientId = clientId;
    }

    public Long getClientId() 
    {
        return clientId;
    }

    public Long getWorkLineId() {
        return workLineId;
    }

    public void setWorkLineId(Long workLineId) {
        this.workLineId = workLineId;
    }

    public void setRoomId(Long roomId)
    {
        this.roomId = roomId;
    }

    public Long getRoomId() 
    {
        return roomId;
    }
    public void setFactoryId(Long factoryId) 
    {
        this.factoryId = factoryId;
    }

    public Long getFactoryId() 
    {
        return factoryId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("dataId", getDataId())
            .append("goodsId", getGoodsId())
            .append("goodsName", getGoodsName())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("allWeight", getAllWeight())
            .append("subWeight", getSubWeight())
            .append("weight", getWeight())
            .append("weightUnit", getWeightUnit())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("clientId", getClientId())
            .append("workLineId", getWorkLineId())
            .append("roomId", getRoomId())
            .append("factoryId", getFactoryId())
            .append("deptId", getDeptId())
            .toString();
    }
}
